package strukturaZamestnanciNepritomnost;

import java.util.TreeMap;

public class Zamestnanec implements Comparable<Zamestnanec> {

    private String meno;
    private String priezvisko;
    private double vahovanie;
    private double pocetDniDovolenky;
    private boolean active;
    private int typ;//0 = vratnik, 1 = straznik
    private TreeMap<Integer, Integer> vztahy;

    public Zamestnanec(String first_name, String last_name, double vahovanie1, double pocet_dni_dovolenky1, int typ_zamestnanca) {
        meno = first_name;
        priezvisko = last_name;
        vahovanie = vahovanie1;
        pocetDniDovolenky = pocet_dni_dovolenky1;
        vztahy = new TreeMap<>();
        typ = typ_zamestnanca; // typ 0 = vratnik, 1 = straznik
        active = true;
    }

    public String getMeno() {
        return meno;
    }

    public String getPriezvisko() {
        return priezvisko;
    }

    public double getVahovanie() {
        return vahovanie;
    }

    public double getPocetDniDovolenky() {
        return pocetDniDovolenky;
    }

    public int getTypZamestnanca() {
        return typ;
    }

    public void addVztah(int ID_zam, int rating) {
        //nepouzivat pre upravu vztahov! - sluzi pre ucely funkcie Zamestnanci.addVztah()            
        vztahy.put(ID_zam, rating);
    }

    public void removeVztah(int ID_zam) {
        //nepouzivat pre upravu vztahov! - sluzi pre ucely funkcie Zamestnanci.removeVztah()   
        vztahy.remove(ID_zam);
    }

    public TreeMap<Integer, Integer> getVztahy() {
        //pouzivat len na ziskanie udajov o vztahoch zamestnanca - nie na upravu vztahov!
        return vztahy;
    }

    @Override
    public int compareTo(Zamestnanec o) {
        return (new Double(vahovanie)).compareTo(new Double(o.vahovanie));
    }

    public boolean isActive() {
        return active;
    }

    public void setInactive() {
        active = false;
    }
}
